package com.UnionPayCenter.distribution.constants;

import com.UnionPayCenter.account.enums.AccountTypeEnum;

import java.util.Date;

/**
 * @author Noah
 * @since 1.0.0, 2019/07/02
 */
public class TemplateDefaultConstants {

    /**
     * 分销类型  1.充值分销；2支付分销
     */
    public static final String DISTR_ID = "2";

    /**
     * 分润比例
     * 实际发生额比例,单位%
     */
    public static final Integer SHARE_PROP = 100;

    /**
     * 分润类型
     * 1.	按发生额总额分润；2按比例分润；3.按分润总额分润
     * 场景：三级交易发生额100元，分润比例10%，1.一级分10元，二级分10元；2.一级分1元；二级分10元；3.一级分1元，二级分9元
     */
    public static final String SHARE_TYPE = "2";

    /**
     * 是否支持赠送金额分销  0.不支持 1支持
     */
    public static final String PRE_SHARE_FLAG = "0";
    /**
     * 分销有效期 天,即上下线分销关系持续多少天
     */
    public static final Integer SHARE_VAL = 99999;

    /**
     * 活动点击有效期  天,即下线用户多少天内点击链接有效
     */
    public static final Integer ACT_VAL = 99999;

    /**
     * 分销是否限时  0否 1是
     */
    public static final String SHARE_LIMIT = "0";
    /**
     * 分销活动有效期开始  2037-1-1 00:00:00
     */
    public static final Date ACT_TIME_END = new Date(2114352000000L);
    /**
     * 分销金额上限
     */
    public static final Integer SHARE_AMO_LIMIT = 999999999;
    /**
     * 分销级数
     */
    public static final Integer SHARE_LVL = 2;
    /*
     *分销发生额限制开始 分 发生额下限，如小于限制，则不计入分销
     */
    public static final Integer ACCRUAL_START = 0;
    /**
     * 分销发生额限制结束  单位分 发生额上限如大于限制，则按限制最高额计算
     */
    public static final Integer ACCRUAL_END = 99999999;

    /**
     * 分销储值账户类型
     */
    public static final String ACC_TYPE = String.valueOf(AccountTypeEnum.DISTRIBUTION_CHARGE.code());


    /**
     * 分销活动优先级
     */
    public static final Integer ACT_LEV = 0;

    /**
     * 分销收益限制次数
     */
    public static final Integer ACT_NUM = 9999999;

    /**
     * 分销优惠活动主键
     */
    public static final String DIS_TYPE = "";

    /**
     * 记录状态 0作废1有效
     */
    public static final String flag = "1";

    /**
     * 备注
     */
    public static final String remark = "";

    /**
     * 分销活动有效期开始
     */
    public static Date ACT_TIME_START = new Date();

}
